Unity5Lightmapで遊ぼうというかBake


概要

慣れる意味でいろいろな方法でBakeしたりしなかったりしてみる。

一応Githubに上げておいた。

Lgh

https://github.com/sassembla/Lgh



パターンバイパターン

シーンに置かれたLightのBaking設定、

Sceneに置かれたObjectのLightmap Static 設定、

Lighting > Scene > Ambient GI の設定 をそれぞれ行い、


どう見えるのかとかを整理してみた。


比較環境を作り出す手順はすべて一様で、以下。

1. PlaneとCubeを作る

2. CubeをPlaneの子に入れる

3. Plane, Light, Lightingのパラメータを変更する

4. PlaneのPrefabをつくって新規シーンで読み込み、lightmapの有無を見る


全3パラメータ、2x2x2の8パターン。


1.0_Lrt_nonst_SAGrt 2.0_Lrt_nonst_SAGb

1.png2.png


3.0_Lrt_st_SAGb 4.0_Lb_st_SAGb

3.png4.png


5.0_Lb_st_SAGrt 6.0_Lrt_st_SAGrt

5.png6.png


7.0_Lb_nonst_SAGb 8.0_Lb_nonst_SAGrt

7.png8.png


結果を表にするとこんな感じ。

スクリーンショット 2015-03-21 20.09.55.png

オブジェクトの状態をstaticにして、colorが微妙に変わっちゃうのは何でなんだろう。



とりあえず

実際にBakeされたオブジェクトをPrefabにして別シーンに放り込んで、そのシーンのLightのBaking設定をBakedにしてみたところ。

画面左奥のものがBake済みのもの。手前のオブジェクトはstaticではないモノ。

スクリーンショット 2015-03-20 1.06.00.png


Lightの設定がBakeなので、Bakeされた物体のみが光源計算されている。

Plane1 > Cubeを動かしても、影が再計算される。

Continuous Baking はcheck入り。

Lighting > Scene > Ambient GI はRealtimeのまま。

ということで、

・よそのSceneでBakeしたPrefabも、lightmapの情報を持ったまま他のシーンに持ち込める

・その際、Bakeに使ったSceneに関連するファイル(Lightmap-0_comp_dir, Lightmap-0_comp_light)は不要。Prefabから参照されてないみたい。


Light のBaking設定について

これ。

スクリーンショット 2015-03-19 22.56.53.png


Light のBaking設定は、

Realtime: なんでもかんでも加算、Bakedなモノでも無差別に明るくなる

Baked: Bakedなモノに干渉しない、他も照らさない

Mixed: Bakedのモノには干渉しない、他を照らす


という結果になる。



SceneのAmbient GI設定について

LightのBaking設定に似ている。

スクリーンショット 2015-03-19 23.31.32.png


Lighting > Scene > Ambient GIの設定は、

Realtime: なんでもかんでも加算、Bakedなモノでも無差別に明るくなる

Baked: Bakedなモノに干渉しない、他は照らす

という結果になる。


なぜ時々茶色くなるのか

シーンを開き直したら、あれ、茶色い。

スクリーンショット 2015-03-19 23.02.49.png

みたいな時無いっすか。自分ときどきビビるんだけど。

スクリーンショット 2015-03-19 23.04.28.png


Lighying > Build するか、

Continuous Baking のチェックを入れると結局Lighting > Buildをやったのと同じになって、色味が戻る。

Continuous Bakingのチェックがすでに入っていても、Sceneを開き直した際に反映されない事があるので、

チェックを入れ直すと反映される。

スクリーンショット 2015-03-19 23.06.58.png

はい。ヌッガーーーー不完全だなァァアアアア!!!!



真っ黒になって死ぬ

シーンを開くと真っ黒になっててヒッてなる。

こんな感じこんな感じ。

スクリーンショット 2015-03-19 23.18.11.png

Baked したものだけが真っ黒な状態で表面カリッカリやぞみたいな時がある。

右の方のキューブが白いのは、こいつはBakeを使ってないから。

完全なUnityのロードエラーなのでは?? と思っている。

このへんも、

Lighying > Build するか、

Continuous Baking のチェックを入れると結局Lighting > Buildをやったのと同じになって、失われた色が戻る。

やったねたえちゃん!! なんとか何も問題が無かった事にできそうだよ!